<html>
<head>
<title>Release notes</title>
</head>

<style>
 H1, H2, H3, H4 { color: blue }
 H1, H2, H3, H4, H5 { font-family: Helvetica;}
 PRE {  color: black;  margin-left: 2%; }
 BODY { color: black;  margin-left: 2%; font-family: Verdana; font-size=75%}
 table{ color: black;  font-family: Verdana; font-size=100%}
</style>

<body bgcolor="#FFFFFF">

<h1>Release notes for &micro;C/GUI Version 3.98</h1>
<font size=-1>
Updated: 2005-11-16 [JE]<br>
</font>
  <ol>
  <li><a href=#features>New features</a>
  <li><a href=#pcorr>Program corrections</a>
  <li><a href=#history>Release history</a>
  <li><a href=#misc>Miscellaneous</a>
  </ol>
<hr>

<!-------------------------------------------------------------------------->
<!-- NEW FEATURES                                                         -->
<!-------------------------------------------------------------------------->
<h2><a name="features">New features / improvements</a></h2>

<h3>Version 3.98</h3>
<ol>
<li>GUI Core:
<ul type=square>
<li>New function GUI_DispStringInRectWrap() added. Draws text with optional text wrapping within the given rectangle.
<li>New function GUI_GIF_DrawEx() added. Draws the given sub item of a GIF file.
<li>New function GUI_GIF_GetInfo() added. Returns information about a GIF file.
<li>New function GUI_JPEG_DrawEx() added. Draws a JPEG file which does not have to be loaded completely into memory.
<li>New function GUI_JPEG_DrawScaled() added. Draws a JPEG file with optional scaling.
<li>New function GUI_JPEG_DrawScaledEx() added. Draws a JPEG file which does not have to be loaded completely into memory with optional scaling.
<li>New function GUI_JPEG_GetInfoEx() added. Returns information about a JPEG file which does not have to be loaded completely into memory.
<li>New function GUI_CURSOR_GetState() added. Returns if the cursor is visible or not.
</ul>
<li>Memory devices:
<ul type=square>
<li>New function GUI_MEMDEV_MarkDirty() added. Marks pixels as 'used' which have been modified by a pointer operation.
</ul>
<li>Widget library:
<ul type=square>
<li>New config option WIDGET_USE_PARENT_EFFECT added. If set to 1, each child widget has the same effect as its parent widget.
<li>The key GUI_KEY_BACKTAB now can be used to move to the previous element of a dialog item. In the simulation SHIFT+TAB can be used.
</ul>
<li>EDIT widget:
<ul type=square>
<li>New function EDIT_GetCursorCharPos() added. Returns the character position of the cursor.
<li>New function EDIT_GetCursorPixelPos() added. Returns the pixel position of the cursor.
<li>New function EDIT_SetUlongMode() added. Sets the widget to unsigned long mode (0 - 4294967295).
<li>EDIT widget now sends WM_NOTIFICATION_CLICKED and WM_NOTIFICATION_RELEASED messages.
</ul>
<li>GRAPH widget:
<ul type=square>
<li>New function GRAPH_DATA_XY_SetLineStyle() added. Sets the line style used to draw the data.
</ul>
<li>HEADER widget:
<ul type=square>
<li>New function HEADER_SetDragLimit() added. Limits dragging of the dividers within the window area of the header widget.
</ul>
<li>LISTVIEW:
<ul type=square>
<li>New function LISTVIEW_CompareDec() added. Compare function for comparing 2 integer values.
<li>New function LISTVIEW_CompareText() added. Compare function for comparing 2 strings.
<li>New function LISTVIEW_DisableSort() added. Disables sorting of the LISTVIEW widget.
<li>New function LISTVIEW_EnableSort() added. Enables sorting of the LISTVIEW.
<li>New function LISTVIEW_GetSelUnsorted() added. Returns the number of the selected item in unsorted state.
<li>New function LISTVIEW_GetUserData() added. Returns the user data of the given row which has been set with the function LISTVIEW_SetUserData().
<li>New function LISTVIEW_InsertRow() added. Inserts the given row at the given position.
<li>New function LISTVIEW_SetAutoScrollH() added. Enables the automatic use of a horizontal scrollbar.
<li>New function LISTVIEW_SetAutoScrollV() added. Enables the automatic use of a vertical scrollbar.
<li>New function LISTVIEW_SetCompareFunc() added. Sets the compare function for the given column.
<li>New function LISTVIEW_SetSelUnsorted() added. Sets the current selection in unsorted state.
<li>New function LISTVIEW_SetSort() added. Sets the column and sorting order to be sorted by.
<li>New function LISTVIEW_SetUserData() added. Sets the user data of the given row.
<li>New config option LISTVIEW_SCROLLSTEP_H_DEFAULT added.
<li>The keys GUI_KEY_RIGHT and GUI_KEY_LEFT can now be used for scrolling to the left and to the right.
</ul>
<li>MENU widget:
<ul type=square>
<li>New function MENU_Popup() added. Opens a popup menu at the given position.
</ul>
<li>MULTIEDIT widget:
<ul type=square>
<li>New function MULTIEDIT_GetCursorCharPos() added. Returns the character position of the cursor.
<li>New function MULTIEDIT_GetCursorPixelPos() added. Returns the pixel position of the cursor.
<li>New function MULTIEDIT_AddText() added. Adds additional text at the current cursor position.
</ul>
<li>TEXT widget:
<ul type=square>
<li>New function TEXT_SetWrapMode() added. Sets the wrap mode of a specified text widget.
<li>New function TEXT_SetDefaultWrapMode() added. Sets the default wrap mode for new text widgets.
</ul>
<li>MESSAGEBOX widget:
<ul type=square>
<li>New config option GUI_MESSAGEBOX_CF_MOVEABLE added. Enables dragging of the box at the title bar.
</ul>
<li>FRAMEWIN widget:
<ul type=square>
<li>New config option FRAMEWIN_ALLOW_DRAG_ON_FRAME added. Enables dragging of the window at the window frame.
</ul>
<li>SCROLLBAR widget:
<ul type=square>
<li>New config option SCROLLBAR_THUMB_SIZE_MIN_DEFAULT added. Sets the minimum size of the widgets thumb area.
</ul>
<li>Display drivers:
<ul type=square>
<li>LCDSLin driver: Support for RAIO 8822/8803/8835 added.
<li>LCD667XX driver: Support for Sharp LR38825 and Samsung S6D0117 added.
<li>LCDPage1bpp driver: Support for UltraChip UC1601 added.
</ul>
</ol>

<h3>Version 3.96</h3>
<ol>
<li>Foreign language support:
<ul type=square>
<li>Arabic support added.
</ul>
<li>Fonts:
<ul type=square>
<li>Antialiased SIF fonts added.
</ul>
<li>VNC server:
<ul type=square>
<li>Frame transmission accelerated by adding a new compression method and block reading.
</ul>
<li>Widget library:
<ul type=square>
<li>New GRAPH widget added to visualize data like measurement values and function graphs.
</ul>
<li>BUTTON widget:
<ul type=square>
<li>New function BUTTON_GetBitmap() added. Returns a pointer to the optional button bitmap.
</ul>
<li>CHECKBOX widget:
<ul type=square>
<li>New function CHECKBOX_GetText() added. Returns the optional text of a CHECKBOX widget.
</ul>
<li>DROPDOWN widget:
<ul type=square>
<li>New function DROPDOWN_SetColor() added. Sets the color of the arrow and the button of the DROPDOWN widget.
<li>New function DROPDOWN_SetDefaultColor() added. Sets the default color of the arrow and the button for new DROPDOWN widgets.
<li>New function DROPDOWN_SetDefaultScrollbarColor() added. Sets the default color of the optional SCROLLBAR in the dropdown list.
<li>New function DROPDOWN_SetScrollbarColor() added. Sets the color of the optional SCROLLBAR in the dropdown list.
</ul>
<li>RADIO widget:
<ul type=square>
<li>New function RADIO_GetText() added. Returns the optional text of a RADIO widget.
</ul>
<li>SCROLLBAR widget:
<ul type=square>
<li>Interface of SCROLLBAR_SetColor() has been changed.
</ul>
<li>2-D Graphic Library:
<ul type=square>
<li>New function GUI_GetDrawMode() added. Returns the currently selected draw mode.
</ul>
<li>Memory devices:
<ul type=square>
<li>New function GUI_MEMDEV_WriteEx() added. Writes the contents of the given memory device into the currently selected memory device using alpha blending and scaling.
<li>New function GUI_MEMDEV_WriteExAt() added. Writes the contents of the given memory device into the currently selected memory device at the specified position using alpha blending and scaling.
</ul>
<li>Window manager:
<ul type=square>
<li>New function WM_GetCallback() added. Returns a pointer to the callback function of the given window.
</ul>
<li>Display drivers:
<ul type=square>
<li>LCD667XX driver: Support for Samsung S6D0110A added.
<li>LCD07X1 driver: Support for Sitronix ST7541 added.
<li>LCD66750 driver: Support for Hitachi HD66753 added.
</ul>
</ol>

<h3>Version 3.94</h3>
<ol>
<li>Viewer:
<ul type=square>
<li>Virtual screen support added.
</ul>
<li>GUI Core:
<ul type=square>
<li>GIF file support added.
<li>New function GUI_SetClipRect() added. Limits the output to the given area.
</ul>
<li>Memory devices:
<ul type=square>
<li>Support for 1bpp memory devices added.
</ul>
<li>Window manager:
<ul type=square>
<li>New function WM_SetWindowPos() added. Sets position and size of the given window.
<li>New functions WM_GetScrollPosH() and WM_GetScrollPosV() added. Returns the scroll position of an attached horizontal or vertical scroll bar.
<li>New functions WM_SetScrollPosH() and WM_SetScrollPosV() added. Sets the scroll position of an attached horizontal or vertical scroll bar.
</ul>
<li>BUTTON Widget:
<ul type=square>
<li>New function BUTTON_SetDefaultFocusColor() added. Sets the default color used to render the focus rectangle of new BUTTON widgets.
<li>New function BUTTON_SetFocusColor() added. Sets the color used to render the focus rectangle.
<li>New config option BUTTON_FOCUSCOLOR_DEFAULT added.
</ul>
<li>CHECKBOX Widget:
<ul type=square>
<li>New function CHECKBOX_SetBoxBkColor() added. Sets the background color of the box area.
<li>New function CHECKBOX_SetDefaultFocusColor() added. Sets the default color used to render the focus rectangle of new CHECKBOX widgets.
<li>New function CHECKBOX_SetFocusColor() added. Sets the color used to render the focus rectangle.
<li>Widget now sends a notification WM_NOTIFICATION_VALUE_CHANGED when the status has been changed.
<li>Image of 'unchecked' state can now be set.
</ul>
<li>EDIT Widget:
<ul type=square>
<li>New function EDIT_SetTextMode() added. Sets the edit mode of the given EDIT field back to text mode.
</ul>
<li>LISTBOX Widget:
<ul type=square>
<li>New function LISTBOX_GetDefaultTextAlign() added. Returns the default text alignment used to render the text of new LISTBOX widgets.
<li>New function LISTBOX_GetTextAlign() added. Returns the text alignment used to render the text.
<li>New function LISTBOX_SetDefaultTextAlign() added. Sets the default text alignment used to render the text of new LISTBOX widgets.
<li>New function LISTBOX_SetTextAlign() added. Sets the text alignment used to render the text.
<li>New color index LISTBOX_CI_DISABLED added. Used to set the color/background color of disabled items.
</ul>
<li>LISTVIEW Widget:
<ul type=square>
<li>New color index LISTVIEW_CI_DISABLED added. Used to set the color/background color of disabled items.
</ul>
<li>MENU Widget:
<ul type=square>
<li>Keyboard support added.
</ul>
<li>PROGBAR Widget:
<ul type=square>
<li>Support for vertical progress bars added.
</ul>
<li>RADIO Widget:
<ul type=square>
<li>New function RADIO_SetDefaultFocusColor() added. Sets the default color used to render the focus rectangle of new RADIO widgets.
<li>New function RADIO_SetFocusColor() added. Sets the color used to render the focus rectangle.
<li>Config options reworked.
</ul>
<li>SCROLLBAR Widget:
<ul type=square>
<li>New function SCROLLBAR_SetColor() added. Sets the color attributes of a SCROLLBAR widget.
<li>New function SCROLLBAR_SetDefaultColor() added. Sets the default colors used for new SCROLLBAR widgets.
</ul>
<li>SLIDER Widget:
<ul type=square>
<li>New function SLIDER_SetDefaultFocusColor() added. Sets the default color used to render the focus rectangle of new SLIDER bars.
<li>New function SLIDER_SetFocusColor() added. Sets the color used to render the focus rectangle.
</ul>
<li>All widgets:
<ul type=square>
<li>Callback functions exported.
</ul>
<li>Antialiasing:
<ul type=square>
<li>New function GUI_AA_DrawPolyOutlineEx() added. Contrary to GUI_AA_DrawPolyOutline() this function does not limit the number of points of the polygon.
</ul>
<li>Unicode:
<ul type=square>
<li>New function GUI_UC_ConvertUC2UTF8() added. Converts a Unicode string into UTF-8 format.
<li>New function GUI_UC_ConvertUTF82UC() added. Converts a UTF-8 string into Unicode format.
</ul>
<li>Display drivers:
<ul type=square>
<li>New driver LCD0323 for Solomon SSD0323 controller added.
<li>New driver LCD1200 for Toppoly C0C0 and C0E0 controller added.
<li>New driver LCD13701 for Epson S1D13701 controller added.
<li>New driver LCDNoritake for Noritake displays added.
<li>New driver LCD667XX for Hitachi HD66772, HD66766 and HD66789 controller added.
<li>New driver LCDXylon added.
<li>New config macros LCD_FILL_RECT and LCD_LIN_SWAP added to LCDLin driver (32 bit access).
<li>32 bit version of LCDLin driver now supports 1 and 2 bpp color depth.
</ul>
</ol>

<h3>Version 3.92</h3>
<ol>
<li>Simulator:
<ul type=square>
<li>&micro;C/GUI Simulator now can be easily used in other simulations.
</ul>
<li>Window manager:
<ul type=square>
<li>New function WM_PaintWindowAndDescs() added. (Re)Paints the given window and all descendants.
<li>New function WM_Update() added. Updates the invalid part of the given window.
<li>New function WM_UpdateWindowAndDescs() added. Updates the given window and all descendants.
</ul>
<li>Messagebox:
<ul type=square>
<li>New flag GUI_MESSAGEBOX_CF_MODAL added. Used to create a modal message box.
</ul>
<li>LISTVIEW widget:
<ul type=square>
<li>New function LISTVIEW_DisableRow() added. Sets the state of the given row to disabled.
<li>New function LISTVIEW_EnableRow() added. Sets the state of the given row to enabled.
<li>New function LISTVIEW_GetItemText() added. Returns the text of the given cell.
</ul>
<li>Virtual screens:
<ul type=square>
<li>Virtual screen support added.
<li>New functions GUI_SetOrg() and GUI_GetOrg() added. Sets and returns the origin of the display.
<br>
</ol>

<h3>Version 3.90c</h3>
<ol>
<li>Display drivers:
<ul type=square>
<li>Accelerated version of LCDLin32 driver added with support for 1 and 2 bpp mode.
</ul>
<br>
</ol>

<h3>Version 3.90b</h3>
<ol>
<li>Common:
<ul type=square>
<li>New config macro GUI_TRIAL_VERSION added. Can be used to mark the compiler output as evaluation version.
</ul>
<br>
</ol>

<h3>Version 3.90</h3>
<ol>
<li>Window manager:
<ul type=square>
<li>New function WM_GetPrevSibling() added. Returns the previous sibling of a window.
<li>New message WM_MOUSEOVER added.
<li>New createflag WM_CF_MEMDEV_ON_REDRAW added. Can be used as a replacement of WM_CF_MEMDEV to accelerate the initial rendering of a window.
</ul>
<li>Widget library:
<ul type=square>
<li>New notification WM_NOTIFICATION_SCROLL_CHANGED added to DROPDOWN, LISTBOX, LISTVIEW and MULTIEDIT widget. It is send to the parent window if the scroll position of the scrollbar has changed.
<li>MENU widget added.
</ul>
<li>BUTTON widget:
<ul type=square>
<li>Support for bitmaps in disabled state added.
</ul>
<li>DROPDOWN widget:
<ul type=square>
<li>DROPDOWN_SetTextHeight() added. Sets the height of the rectangle used to display the DROPDOWN text in closed state.
<li>DROPDOWN_SetTextAlign() added. Sets the text alignment used to display the DROPDOWN text in closed state.
</ul>
<li>FRAMEWIN widget:
<ul type=square>
<li>FRAMEWIN_SetResizeable() added. Sets the state of the FRAMEWIN to resizeable. If the FRAMEWIN is resizeable the size can be changed by dragging the borders of the window.
<li>FRAMEWIN_AddMenu() added. Adds a menu widget to the frame window.
<li>Rendering of FRAMEWIN widgets accelerated.
</ul>
<li>LISTVIEW widget:
<ul type=square>
<li>LISTVIEW_GetBkColor() added. Returns the background color of the widget.
<li>LISTVIEW_GetTextColor() added. Returns the text color of the widget.
<li>LISTVIEW_SetItemTextColor() added. Sets the text color of a LISTVIEW cell.
<li>LISTVIEW_SetItemBkColor() added. Sets the background color of a LISTVIEW cell.
</ul>
<li>Display drivers:
<ul type=square>
<li>Support for Solomon SSD1815 added to Page1bpp driver.
</ul>
<br>
</ol>

<h3>Version 3.82</h3>
<ol>
<li>Display driver:
<ul type=square>
<li>LCDLin driver for 32 bit access accelerated. If using a 32 bit CPU with an embedded display controller, the use of this driver is recommended.
<li>Support for Samsung S6B1713, Epson S1D13A03, Epson S1D13A04 and Epson S1D13A05 added.
<li>LCD_ALLOW_NON_OPTIMIZED_MODE added to the drivers. <b>When compiling a driver which is not or partially not optimized, a compiler error occurs.</b> To allow a non optimized mode, please add the following line to LCDConf.h:
<br>#define LCD_ALLOW_NON_OPTIMIZED_MODE 1
</ul>
<li>Window manager:
<ul type=square>
<li>WM_IsCompletelyVisible() added to be able to determine if a window is completely visible or not.
<li>WM_IsEnabled() added to be able to determine if a widget is enabled or not.
<li>Optional message WM_NOTIFY_VIS_CHANGED added to inform a window, that it's visibility has changed.
</ul>
<li>BUTTON widget:
<ul type=square>
<li>Configuration macro BUTTON_REACT_ON_LEVEL added. Allows reaction to level changes only.
<li>BUTTON_GetDefaultAlign() added. Returns the default alignment of the button text for new buttons.
<li>BUTTON_GetDefaultBkColor() added. Returns the default background color for new buttons.
<li>BUTTON_GetDefaultFont() added. Returns the default font for new buttons.
<li>BUTTON_GetDefaultTextColor() added. Returns the default text color of the button text for new buttons.
<li>BUTTON_SetDefaultAlign() added. Sets the default alignment of the button text  for new buttons.
<li>BUTTON_SetDefaultBkColor() added. Sets the default background color for new buttons.
<li>BUTTON_SetDefaultFont() added. Sets the default default font for new buttons.
<li>BUTTON_SetDefaultTextColor() added. Sets the default default text color of the button text for new buttons.
</ul>
<li>CHECKBOX widget:
<ul type=square>
<li>CHECKBOX_GetDefaultBkColor() added. Returns the default background color for new check boxes.
<li>CHECKBOX_GetDefaultFont() added. Returns the default font for new check boxes.
<li>CHECKBOX_GetDefaultSpacing() added. Returns the spacing between the box and the optional text for new check boxes.
<li>CHECKBOX_GetDefaultTextAlign() added. Returns the text alignment of the optional text for new check boxes.
<li>CHECKBOX_GetDefaultTextColor() added. Returns the text color of the optional text for new check boxes.
<li>CHECKBOX_GetState() added. Returns the current state of a check box.
<li>CHECKBOX_SetBkColor() added. Sets the background color of the check box.
<li>CHECKBOX_SetDefaultBkColor() added. Sets the default background color for new check boxes.
<li>CHECKBOX_SetDefaultFont() added. Sets the default font for new check boxes.
<li>CHECKBOX_SetDefaultSpacing() added. Sets the spacing between the box and the optional text for new check boxes.
<li>CHECKBOX_SetDefaultTextAlign() added. Sets the text alignment of the optional text for new check boxes.
<li>CHECKBOX_SetDefaultTextColor() added. Sets the text color of the optional text for new check boxes.
<li>CHECKBOX_SetFont() added. Sets the font used to display the optional text of a check box.
<li>CHECKBOX_SetNumStates() added to be able to modify the number of possible states (2 or 3).
<li>CHECKBOX_SetSpacing() added. Sets the spacing between the box and the optional text.
<li>CHECKBOX_SetState() added. Sets the state of the check box.
<li>CHECKBOX_SetText() added. Sets the optional text of a check box.
<li>CHECKBOX_SetTextAlign() added. Sets the text alignment of the optional check box text.
<li>CHECKBOX_SetTextColor() added. Sets the text color of the optional check box text.
<li>CHECKBOX Configuration macros added: CHECKBOX_BKCOLOR_DEFAULT, CHECKBOX_FONT_DEFAULT, CHECKBOX_IMAGE0_DEFAULT, CHECKBOX_IMAGE1_DEFAULT, CHECKBOX_SPACING_DEFAULT, CHECKBOX_TEXTALIGN_DEFAULT, CHECKBOX_TEXTCOLOR_DEFAULT
</ul>
<li>LISTBOX widget:
<ul type=square>
<li>LISTBOX_GetDefaultBkColor() added. Returns the default background color for new listboxes.
<li>LISTBOX_GetDefaultTextColor() added. Returns the default text color for new listboxes.
<li>LISTBOX_SetDefaultBkColor() added. Sets the default background color for new listboxes.
<li>LISTBOX_SetDefaultTextColor() added. Sets the default text color for new listboxes.
</ul>
<li>FRAMEWINDOW widget:
<ul type=square>
<li>Rendering of FRAMEWINDOW widgets accelerated by disabling the use of memory devices per default.
</ul>
<li>EDIT widget:
<ul type=square>
<li>The widget now considers the effect size (none, simple, 3D) when displaying the text. If using 3D effects the text moved 1 pixel to the right in comparison to older versions.
</ul>
<li>Fonts:
<ul type=square>
<li>Big digit fonts added: FD48, FD64, FD80, FD36x48, FD48x64 and FD60x80.
</ul>
<li>Bitmap converter:
<ul type=square>
<li>Command line option added to specify transparency for a bitmap.
</ul>
</ol>

<h3>Version 3.80</h3>
<ol>
<li>Simulation:
<ul type=square>
<li>SIM_SetMag() added to support magnification of the simulated display.
<li>Possible number of tasks in simulation increased from 10 to 100.
</ul>
<li>Window manager:
<ul type=square>
<li>WM_SetTransState() added to be able to change the WM_SF_CONST_OUTLINE flag of an existing window.
</ul>
<li>EDIT widget:
<ul type=square>
<li>Support for user defined edit modes added.
<li>EDIT_GetNumChars() added to be able to get the number of characters in an edit field.
<li>EDIT_SetSel() added to be able to select characters.
<li>EDIT_SetpfAddKey() added to be able set a user defined function to handle the input.
<li>EDIT_SetInsertMode() added to be able to enable and disable the insert mode of an edit field.
<li>EDIT_SetFloatValue() added to be able to set the value of an edit field if working in floating point mode.
</ul>
<li>RADIO widget:
<ul type=square>
<li>Optional text added.
<li>Support for radio button groups added.
<li>RADIO_GetDefaultFont() added to get the default font used to display the optional text next to the radio buttons.
<li>RADIO_GetDefaultTextColor() added to get the default text color used to display the optional text next to the radio buttons.
<li>RADIO_SetBkColor() added to set the background color of a radio widget.
<li>RADIO_SetDefaultFont() added to set the default font used to display the optional text next to the radio buttons.
<li>RADIO_SetDefaultTextColor() added to set the default text color used to display the optional text next to the radio buttons.
<li>RADIO_SetFont() added to set the font used to display the optional text next to the radio buttons.
<li>RADIO_SetGroupId() added to be able to build groups of radio buttons.
<li>RADIO_SetText() added to be able to set optional text which is shown next to the radio button.
<li>RADIO_SetTextColor() added to set the text color used to display the optional text next to the radio buttons.
</ul>
<li>Display driver:
<ul type=square>
<li>New driver LCDLin32 added to support linear video memory access with 32bit operations.
<li>New driver LCDPage4bpp added to support Sitronix ST7528.
<li>New driver LCD1781 added to support Solomon SSD1781.
<li>Support for Epson S1D13700 added to LCDSLin driver.
<li>Support for Novatec NT7502, Samsung S6B1713 and Philips PCD8544 added to LCDPage1bpp driver.
</ul>
<br>
</ol>

<h3>Version 3.76</h3>
<ol>
<li>WIDGET library:
<ul type=square>
<li>MULTIPAGE widget added.
<li>SLIDER and SCROLLBAR widget send the notification codes WM_NOTIFICATION_CLICKED and WM_NOTIFICATION_RELEASED to the parent window.
<li>Functions added to EDIT widget: EDIT_SetDefaultTextColor(), EDIT_SetDefaultBkColor(), EDIT_GetDefaultTextColor(), EDIT_GetDefaultBkColor() and EDIT_GetDefaultTextAlign().
<li>DROPDOWN_SetScrollbarWidth added to be able to set the width of the scrollbar used by the dropdown list.
<li>LISTBOX_SetScrollbarWidth added to be able to set the width of the scrollbars used by the widget.
</ul>
<li>Memory devices:
<ul type=square>
<li><b>The memory limitation for 16 bit devices has been lifted</b>. 16 bit devices can use more than 32767 bytes of memory.
</ul>
<br>
</ol>

<h3>Version 3.74</h3>
<ol>
<li>Colors:
<ul type=square>
<li>The definition of GUI_MAGENTA has been changed from 0x8B008B to 0xFF00FF.
<li>New predefined colors added.
</ul>
<li>Memory devices:
<ul type=square>
<li>New function GUI_MEMDEV_CreateFixed() added to be able to create a memory device of fixed size, color depth (bpp) and specified color conversion.
</ul>
<li>WIDGET library:
<ul type=square>
<li>New functions TEXT_SetBkColor() and RADIO_SetBkColor() added.
</ul>
<br>
</ol>

<h3>Version 3.72</h3>
<ol>
<li>Window manager:
<ul type=square>
<li>WM_SetID added to be able to change the ID of a widget at run time.
<li>WM_ForEachDesc added to be able to iterate over all descendants of a window.
<li>WM_CF_CLIP_LATE added to tell the window manager that only one WM_PAINT message should be send to an invalid window.
</ul>
<li>Fonts:
<ul type=square>
<li>Support for system independent fonts added. System independent fonts do not need to be added to the project at compile time.
</ul>
<li>Displaying text:
<ul type=square>
<li>GUI_DispStringInRectEx added to be able to draw rotated text.
</ul>
<li>Display driver:
<ul type=square>
<li>Support for UltraChip UC1611 and Hitachi HD66750 added.
</ul>
<li>WIDGET library:
<ul type=square>
<li>BUTTON widget: BUTTON_SetTextAlign added.
<li>DROPDOWN widget: DROPDOWN_SetItemSpacing added to be able to set additional spacing below each item of the dropdown list.
<li>EDIT widget: EDIT_SetFloatMode and EDIT_GetFloatValue added to be able to edit floating point values.
<li>LISTBOX widget: LISTBOX_SetItemSpacing added to be able to set additional spacing below each item of a listbox.
<li>LISTVIEW widget: LISTVIEW_SetLBorder, LISTVIEW_SetRBorder and LISTVIEW_SetRowHeight added.
<li>MULTIEDIT widget: Has been severely accelerated.
<li>RADIO widget: RADIO_SetBkColor added.
<li>SLIDER widget: SLIDER_SetBkColor added.
</ul>
<br>
</ol>

<h3>Version 3.70</h3>
<ol>
<li>Display driver:
<ul type=square>
<li>Support for the following LCD controllers added: Fujitsu MB86290A (Cremson), Fujitsu MB86291 (Scarlet), Fujitsu MB86292 (Orchid), Fujitsu MB86293 (Coral Q), Fujitsu MB86294 (Coral B), Fujitsu MB86295 (Coral P), Samsung S6B33B1X and UltraChip UC1606.
</ul>
<li>WIDGET library:
<ul type=square>
<li>LISTBOX_InvalidateItem added to LISTBOX widget to be able to invalidate an item of a user drawn listbox.
</ul>
<br>
</ol>

<h3>Version 3.62</h3>
<ol>
<li>VNC support added:
<ul type=square>
<li>An (option) VNC server is now available for &micro;C/GUI. It allows arbitrary VNC clients (typically running on the LAN) to connect to the target system in order to view and control it. This feature is also available in the simulation; it requires a TCP/IP connection.
</ul>
<li>WIDGET library:
<ul type=square>
<li>The images used to draw CHECKBOX or RADIO widgets now can be set by the user.
<li>Functions added to DROPDOWN widget: DROPDOWN_Collapse, DROPROWN_DeleteItem, DROPDOWN_Expand, DROPDOWN_InsertString and DROPDOWN_SetAutoScroll.
<li>Functions added to FRAMEWIN widget: FRAMEWIN_IsMinimized and FRAMEWIN_IsMaximized.
</ul>
<li>Display driver:
<ul type=square>
<li>Support for Epson SED1520 added.
<li>Support for Fujitsu MB87J2020 (Jasmin) and MB87J2120 (Lavender) added.
</ul>
<br>
</ol>

<h3>Version 3.60</h3>
<ol>
<li>Window manager:
<ul type=square>
<li>WM_CF_CONST_OUTLINE added to improve transparent window support.
</ul>
<li>Memory devices:
<ul type=square>
<li>GUI_MEMDEV_GetDataPtr added.
</ul>
<li>WIDGET library:
<ul type=square>
<li>Different Y-sizes for LISTBOX entries enabled when using the owner draw function.
<li>BUTTON_IsPressed added.
</ul>
<br>
</ol>

<h3>Version 3.58</h3>
<ol>
<li>Window manager:
<ul type=square>
<li>Button drawing accellerated.
<li>Clipping accellerated.
</ul>
<li>LCD drivers:
<ul type=square>
<li>Support for Leadis LDS501 added.
<li>All display drivers now handles LCD_MIRROR_X, LCD_MIRROR_Y and LCD_SWAP_XY by the same way.
</ul>
<br>
</ol>

<h3>Version 3.56</h3>
<ol>
<li>Window manager:
<ul type=square>
<li>Modal dialogs added.
</ul>
<li>Additional LCD drivers added:
<ul type=square>
<li>Support for Cirrus Logic EP7312 added.
<li>Support for Samsung LTS180S1 added.
</ul>
<li>Improved AVR support for single chip mode added:
<ul type=square>
<li>GUI_UNI_PTR defines a pointer which can point into RAM and ROM.
<li>GUI_CONST_STORAGE defines the const storage to suppress copying the const data from ROM to RAM.
</ul>
<b>
<li>LCD_CONTROLLER macro changed for several LCD controllers!<br>
</ol>

<h3>Version 3.54</h3>
<ol>
<li>JPEG support added
<br>
</ol>

<h3>Version 3.52</h3>
<ol>
<li>Window manager:
<ul type=square>
<li>WM_GetFocussedWindow added.
</ul>
<li>LISTVIEW widget:
<ul type=square>
<li>LISTVIEW_DeleteRow and LISTVIEW_DeleteColumn added.
</ul>
<br>
</ol>

<h3>Version 3.50</h3>
<ol>
<li>Core:
<ul type=square>
<li>Different font styles added (underline, strikethrough and overline).
<li>Different line styles added.
</ul>
<li>MULTIEDIT widget:
<ul type=square>
<li>Password mode added.
</ul>
<br>
</ol>

<h3>Version 3.48</h3>
<ol>
<li>WIDGET library:
<ul type=square>
<li>FRAMEWIN_SetBorderSize added.
<li>MULTIEDIT_SetMaxNumChars added.
</ul>
<li>Window manager:
<ul type=square>
<li>WM_SetStayOnTop and WM_GetStayOnTop added.
</ul>
<br>
</ol>

<h3>Version 3.46</h3>
<ol>
<li>Multi layer / Multi display support:
<ul type=square>
<li>Support for Capricorn 2 added.
<li>Viewer supports BMP-Export via clipboard.
</ul>
<br>
</ol>

<h3>Version 3.44</h3>
<ol>
<li>GUI:
<ul type=square>
<li>Multi layer support added
<li>UTF-8 support added
</ul>
<li>WIDGET library:
<ul type=square>
<li>Owner drawn list boxes enabled.
<li>MULTIEDIT widget added. Can be used as a simple text editor.
</ul>
<li>UNICODE support:
<ul type=square>
<li>Has been replaced with UTF-8 support.
</ul>
<br>
</ol>

<h3>Version 3.42</h3>
<ol>
<li>LISTBOX widget:
<ul type=square>
<li>Enabling and disabling of list box entries added.
<li>Horizontal scrolling without scrollbars enabled.
</ul>
<li>TEXT widget:
<ul type=square>
<li>The text color of a text widget now can be set.
</ul>
<li>FRAMEWIN widget:
<ul type=square>
<li>The text color of the title text now can be set for both states, active and inactive.
</ul>
<br>
</ol>

<h3>Version 3.40</h3>
<ol>
<li>LISTBOX widget:
<ul type=square>
<li>Multi selection mode added.
</ul>
<br>
</ol>

<h3>Version 3.38</h3>
<ol>
<li>Window manager:
<ul type=square>
<li><b>WM.h no longer included by GUI.h. </b>Applications using GUI-functions now need to include GUI.h, applications using WM-function now need to include WM.h.
<li>WM_SetCaptureMove added.
</ul>
<li>BUTTON widget:
<ul type=square>
<li>BUTTON_SetPressed added. Use of BUTTON_SetState not longer recommended.
</ul>
<li>LISTBOX widget:
<ul type=square>
<li>Automatic use of horizontal and vertical scrollbars added.
<li>Inserting, deleting and changing of entries added.
</ul>
<li>SCROLLBAR widget:
<ul type=square>
<li>Scrollbars handels partners and there overlapping area.
<li>Access functions for default values added.
</ul>
<br>
</ol>

<h3>Version 3.36</h3>
<ol>
<li>Window manager:
<ul type=square>
<li>WM_AttachWindow, WM_DetachWindow added.
</ul>
<li>Memory management:
<ul type=square>
<li>Dynamic memory support added.
</ul>
<li>FRAMEWIN widget:
<ul type=square>
<li>Minimize, maximize and close button added.
<li>Custom buttons added.
</ul>
<br>
</ol>

<h3>Version 3.36</h3>
<ol>
<li>Window manager:
<ul type=square>
<li>WM_AttachWindow, WM_DetachWindow added.
</ul>
<li>Memory management:
<ul type=square>
<li>Dynamic memory support added.
</ul>
<li>FRAMEWIN widget:
<ul type=square>
<li>Minimize, maximize and close button added.
<li>Custom buttons added.
</ul>
<br>
</ol>

<h3>Version 3.34</h3>
<ol>
<li>HEADER widget added.
<li>LISTVIEW widget added.
<li>DROPDOWN widget added.
<br>
</ol>

<h3>Version 3.32</h3>
<ol>
<li>WM_SetpfPollPID() added.
<li>BMP file support added.
<br>
</ol>

<h3>Version 3.30</h3>
<ol>
<li>Cursor support added.
<br>
</ol>

<h3>Version 3.28</h3>
<ol>
<li>SIM_SetLCDColorBlack() and SIM_SetLCDColorWhite() added.
<li>LISTBOX_AddString() and LISTBOX_GetNumItems() added.
<li>GUI_TOUCH_StoreStateEx() added.
<li>EDIT widget: flags added.
<li>Simulation: add. options for simulation of colored monochrome displays added.
<br>
</ol>

<h3>Version 3.26</h3>
<ol>
<li>Mouse and keyboard support added.
<br>
</ol>

<h3>Version 3.24</h3>
<ol>
<li>Macros GUI_TOUCH_XSIZE and GUI_TOUCH_YSIZE added.
<li>Simulation project structure changed.
<li>Macros LCD_TIMERINIT0, LCD_TIMERINIT1, LCD_ON and LCD_OFF added.
<li>Support for 444 color mode added.
<li>GUI_Exec() and GUI_Exec1() added.
<br>
</ol>

<h3>Version 3.22</h3>
<ol>
<li>Scrollbars, radio buttons added.
<br>
</ol>

<h3>Version 3.20</h3>
<ol>
<li>Dialog boxes added.
<li>Slider and check box widgets added.
<li>3D effects added.
<br>
</ol>

<hr>

<!-------------------------------------------------------------------------->
<!-- PROGRAM CORRECTIONS                                                  -->
<!-------------------------------------------------------------------------->
<h2><a name="pcorr">Program corrections</a></h2>

<h3>Version 3.96f</h3>
<ol>
<li>Display driver:
<ul type=square>
<li>LCDPage1bpp driver always writes to display 0. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.96e</h3>
<ol>
<li>BUTTON widget:
<ul type=square>
<li>The function BUTTON_GetBitmap() does not return NULL if the requested bitmap is not available. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.96d</h3>
<ol>
<li>BUTTON widget:
<ul type=square>
<li>If a bitmap with index BUTTON_BI_DISABLED is used with the function BUTTON_SetBitmap(), the memory is not released when deleting the BUTTON widget. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.96c</h3>
<ol>
<li>Widget library:
<ul type=square>
<li>When working in a multitasking environment the creation process of some widgets can be interrupted by other tasks, which can lead to accessing uninitialized widgets. This affects only multitasking systems with more than one GUI task. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.96b</h3>
<ol>
<li>LISTBOX widget:
<ul type=square>
<li>When scrolling over a disabled item with GUI_KEY_UP or GUI_KEY_DOWN, the optional scrollbar is not updated. Problem solved.
</ul>
<li>SLIDER widget:
<ul type=square>
<li>The file SLIDER.c does not compile with the configuration option WM_SUPPORT_TRANSPARENCY = 0. Problem solved.
</ul>
<li>HEADER widget:
<ul type=square>
<li>After dragging the width of a column over the touch screen, the column width is changed when touching the screen somewhere else. The problem occurs only if mouse and touch screen support is configured simultaneously. Problem solved.
</ul>
<li>Showing JPEGS's:
<ul type=square>
<li>When drawing a JPEG image it appears one pixel below the desired position. Problem solved.
<li>Drawing a JPEG image changes the current foreground color. Problem solved.
</ul>
<li>Memory devices:
<ul type=square>
<li>If the memory allocated for memory devices is > 32k on 16 bit systems sometimes the allocation of memory fails. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.96</h3>
<ol>
<li>Showing GIF's:
<ul type=square>
<li>In some cases the leftmost pixel of a GIF is not drawn. Problem solved.
</ul>
<li>Multitasking environments:
<ul type=square>
<li>Executing a dialog keeps the GUI locked and blocks it for other tasks. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.94f</h3>
<ol>
<li>DROPDOWN widget:
<ul type=square>
<li>When moving the input focus from an open DROPDOWN widget with GUI_KEY_TAB to the next dialog item, an invalid pointer was dereferenced. Problem solved.
<li>When deleting a window with an open DROPDOWN widget, an invalid handle was dereferenced by the window manager and it may run into an endless loop. Problem solved.
</ul>
<li>Window manager:
<ul type=square>
<li>If memory devices were used for redrawing and insufficient memory was available to redraw the entire area, a memory defragmentation could occur which would lead to dereferencing of an invalid pointer. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.94e</h3>
<ol>
<li>JPEG decompression:
<ul type=square>
<li>Decompression of some larger JPEG images failed. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.94d</h3>
<ol>
<li>LISTBOX widget:
<ul type=square>
<li>When a LISTBOX was partially overlapped, it is sometimes not rendered properly. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.94c</h3>
<ol>
<li>LISTVIEW widget:
<ul type=square>
<li>When calling the function LISTVIEW_SetSel() with -1 as parameter NewSel the function crashes if the previous selection was >= 0. Problem solved.
</ul>
<li>Memory devices:
<ul type=square>
<li>If the memory allocated for memory devices is > 32k on 16 bit systems sometimes the allocation of memory fails. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.94b</h3>
<ol>
<li>CHECKBOX widget:
<ul type=square>
<li>After calling the function CHECKBOX_SetText() the memory of the text is not released when deleting the widget. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.94a</h3>
<ol>
<li>Core:
<ul type=square>
<li>Some compilers have problems with translating the file GUI_GIF.c. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.92d</h3>
<ol>
<li>Antialiasing:
<ul type=square>
<li>Antialiased characters using 2bpp are not shown right when using GUI_TM_TRANS. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.92c</h3>
<ol>
<li>Antialiasing:
<ul type=square>
<li>The function GUI_AA_DrawPolyOutline() works not with polygons of more than 5 points. Problem solved.
</ul>
<li>Window manager:
<ul type=square>
<li>The function WM_PaintWindowAndDescs() does not work in multitasking environments. Problem solved.
</ul>
<li>Display driver:
<ul type=square>
<li>Umlauts of monospaced fonts are not shown completely when using the display driver LCDPage1bpp with more than one display controller. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.92b</h3>
<ol>
<li>GUI core:
<ul type=square>
<li>The function GUI_GetStringDistX() works not right with UTF8 strings. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.92a</h3>
<ol>
<li>Widgets:
<ul type=square>
<li>Under some circumstances the effect frame of a widget is not redrawn. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.92</h3>
<ol>
<li>LISTVIEW widget:
<ul type=square>
<li>Notification message does not contain the handle of the message sender. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.90e</h3>
<ol>
<li>MULTIEDIT Widget
<ul type=square>
<li>MULTIEDIT_SetText() does not show the vertical scroll bar if needed. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.90d</h3>
<ol>
<li>LISTVIEW widget:
<ul type=square>
<li>LISTVIEW_SetItemText() does not accept empty strings. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.90a</h3>
<ol>
<li>RADIO button:
<ul type=square>
<li>When drawing radio button groups more than one button of a group is selected on 16 bit CPUs. Problem solved.
</ul>
<li>DROPDOWN widget:
<ul type=square>
<li>DROPDOWN_SetDefaultFont() does not work. Problem solved.
</ul>
<br>
</ol>

<h3>Version 3.90</h3>
<ol>
<li>UTF-8 support:
<ul type=square>
<li>Problem solved when displaying invalid UTF-8 strings with GUI_DispStringInRect().
</ul>
<br>
</ol>

<h3>Version 3.82</h3>
<ol>
<li>CHECKBOX widget:
<ul type=square>
<li>Size of check box now can be passed to CHECKBOX_CreateIndirect()
</ul>
<li>EDIT widget:
<ul type=square>
<li>Rounding problem solved.
</ul>
<li>Using fonts:
<ul type=square>
<li>Magnifying of proportional fonts improved.
</ul>
<li>Bitmap converter:
<ul type=square>
<li>Problem solved when converting a small RGB bitmap.
</ul>
<br>
</ol>

<h3>Version 3.80a</h3>
<ol>
<li>General:
<ul type=square>
<li>Version number is set to the right value.
</ul>
<li>Checkbox widget:
<ul type=square>
<li>CHECKBOX_CreateIndirect() now handles the parameter xsize an ysize.
</ul>
<br>
</ol>

<h3>Version 3.80</h3>
<ol>
<li>Display driver:
<ul type=square>
<li>The function LCD_L0_ReInit of the driver LCD07X1.c now works without clearing the display.
</ul>
<li>Fonts:
<ul type=square>
<li>Some characters of the font F08_ASCII.c have been changed.
<li>The function GUI_GetFontDistY() now works right with magnified fonts.
</ul>
<li>Button widget:
<ul type=square>
<li>Buttons now work with all text alignments.
</ul>
<br>
</ol>

<h3>Version 3.76c</h3>
<ol>
<li>Widget library:
<ul type=square>
<li>A LISTBOX widget now transmits the widget ID if sending a notification message to the parent window.
</ul>
<br>
</ol>

<h3>Version 3.76b</h3>
<ol>
<li>Modal windows:
<ul type=square>
<li>Problem using WM_MakeModal() solved.
</ul>
<br>
</ol>

<h3>Version 3.76a</h3>
<ol>
<li>Memory devices:
<ul type=square>
<li>Rendering of memory devices with more than 64K data now works on 16 bit CPUs.
</ul>
<br>
</ol>

<h3>Version 3.76</h3>
<ol>
<li>Widget library:
<ul type=square>
<li>If using DROPDOWN_SetFont the vertical size of the closed dropdown widget now will be adapted to the size of the new font.
</ul>
<br>
</ol>

<h3>Version 3.72</h3>
<ol>
<li>Display driver:
<ul type=square>
<li>LCDLin.c now initializes the lookup table of the S1D13704 right.
</ul>
<li>Simulation:
<ul type=square>
<li>Custom bitmaps in simulation now works under Win98 in TrueColor mode.
</ul>
<br>
</ol>

<h3>Version 3.70d</h3>
<ol>
<li>Window Manager:
<ul type=square>
<li>Drawing operations which were called from within a window callback function did under certain circumstances not work right; a part of the drawing operation was sometimes skipped due to a too small clip rectangle. Fixed.
</ul>
<br>
</ol>

<h3>Version 3.70c</h3>
<ol>
<li>Window Manager:
<ul type=square>
<li>WM_BringToTop accellerated.
</ul>
<br>
</ol>

<h3>Version 3.70b</h3>
<ol>
<li>Widget Library:
<ul type=square>
<li>Large SLIDER widgets now work right in a 16 bit environment.
</ul>
<br>
</ol>

<h3>Version 3.70a</h3>
<ol>
<li>Core:
<ul type=square>
<li>Some changes to make it work with compilers, that support only 1 parameter in function pointer calls.
</ul>
<li>LCD-Driver:
<ul type=square>
<li>LCD501: Now works in a multi display environment and with LCD_SWAP_XY and LCD_MIRROR_X or LCD_MIRROR_Y.
<li>LCD6331: Now works in a multi display environment and with LCD_SWAP_XY and LCD_MIRROR_X and LCD_MIRROR_Y.
<li>LCDLin: Optimized version added for displaying 1bpp bitmaps with 16 bit data bus in 1bpp mode.
</ul>
<li>Window Manager:
<ul type=square>
<li>Child windows are not displayed if parent window is hidden.
</ul>
<br>
</ol>

<h3>Version 3.62</h3>
<ol>
<li>HEADER widget: When using a bitmap in a header widget the handle of the draw object remains allocated after deleting the header widget. The problem exists since version 3.34. Fixed in this version.
<br>
</ol>

<h3>Version 3.52</h3>
<ol>
<li>LISTVIEW widget: LISTVIEW_GetNumColums renamed to LISTVIEW_GetNumColumns.
<li>FRAMEWIN widget: Title is not set to active state if a focussable child receive the focus. Fixed.
<li>FRAMEWIN widget: After FRAMEWIN_SetDefaultBorderSize(0) the caption of the FRAMEWIN still has a border. Fixed.
<li>TEXT widget: When using GUI_TA_TOP or GUI_TA_BOTTOM the text is overwritten by the border. Fixed.
<li>LISTBOX widget: When setting the default effect to none the background is not displayed with the right color. Fixed.
<br>
</ol>

<h3>Version 3.42</h3>
<ol>
<li>FRAMEWIN widget: Title is not set to active state if a focussable child receive the focus. Fixed.
<li>FRAMEWIN widget: After FRAMEWIN_SetDefaultBorderSize(0) the caption of the FRAMEWIN still has a border. Fixed.
<li>TEXT widget: When using GUI_TA_TOP or GUI_TA_BOTTOM the text is overwritten by the border. Fixed.
<li>LISTBOX widget: When setting the default effect to none the background is not displayed with the right color. Fixed.
<br>
</ol>

<h3>Version 3.40</h3>
<ol>
<li>FRAMEWIN widget: No activation of framewindow if child has been clicked/focussed. Fixed.
<li>FRAMEWIN widget: FRAMEWIN_SetBarColor does not work. Fixed.
<li>EDIT widget: Text partly overwritten if using GUI_TA_TOP or GUI_TA_BOTTOM. Fixed.
<br>
</ol>

<h3>Version 3.38</h3>
<ol>
<li>LCD-driver: Undefined macro LCD_DISPLAY_INDEX. Fixed.
<br>
</ol>

<h3>Version 3.36</h3>
<ol>
<li>FRAMEWIN widget: Child windows of framewindows could be moved out of parent area. Fixed.
<li>Usage of file names are not consistent (upper/lower case). Fixed.
<li>Transparent windows: Clipping problem with non transparent child windows of transparent parents. Fixed.
<br>
</ol>

<h3>Version 3.34</h3>
<ol>
<li>EDIT widget: Cursor could not be moved to the right side of the last character. Fixed.
<li>EDIT widget: Decrementing a value using the cursor key in hex mode wrong. Fixed.
<li>GUI_DispStringLen: Does not work with characters > 0x7f. Fixed.
<br>
</ol>

<h3>Version 3.32</h3>
<ol>
<li>Compressed bitmaps: Could not be magnified. Fixed.
<li>Compressed bitmaps: Some 8bpp bitmaps where not shown correcly. Fixed.
<li>GUI_DispStringInRect did not clip. Fixed.
<li>WM: Invalidation of sibling windows sometimes incomplete. Fixed.
<br>
</ol>

<hr>

<!-------------------------------------------------------------------------->
<!-- Release history                                                      -->
<!-------------------------------------------------------------------------->
<h2><a name="history">Release history</a></h2>
<table>
  <tr> <td width=20%>Version</td> <td width=30%>Release date</td> <td>Availability</td> </tr>
  <tr> <td>V3.98</td>  <td>2005-11-16</td> <td>General release</td> </tr>
  <tr> <td>V3.96f</td> <td>2005-11-07</td> <td>Point release</td> </tr>
  <tr> <td>V3.96e</td> <td>2005-09-16</td> <td>Point release</td> </tr>
  <tr> <td>V3.96d</td> <td>2005-09-13</td> <td>Point release</td> </tr>
  <tr> <td>V3.96c</td> <td>2005-09-06</td> <td>Point release</td> </tr>
  <tr> <td>V3.96b</td> <td>2005-08-17</td> <td>Point release</td> </tr>
  <tr> <td>V3.96a</td> <td>2005-07-22</td> <td>Point release</td> </tr>
  <tr> <td>V3.96</td>  <td>2005-07-19</td> <td>General release</td> </tr>
  <tr> <td>V3.94f</td> <td>2005-07-07</td> <td>Point release</td>   </tr>
  <tr> <td>V3.94e</td> <td>2005-05-04</td> <td>Point release</td>   </tr>
  <tr> <td>V3.94d</td> <td>2005-04-28</td> <td>Point release</td>   </tr>
  <tr> <td>V3.94c</td> <td>2005-04-22</td> <td>Point release</td>   </tr>
  <tr> <td>V3.94b</td> <td>2005-04-14</td> <td>Point release</td>   </tr>
  <tr> <td>V3.94a</td> <td>2005-04-12</td> <td>Point release</td>   </tr>
  <tr> <td>V3.94</td>  <td>2005-03-31</td> <td>General release</td> </tr>
  <tr> <td>V3.92d</td> <td>2005-03-11</td> <td>Point release</td>   </tr>
  <tr> <td>V3.92c</td> <td>2005-03-07</td> <td>Point release</td>   </tr>
  <tr> <td>V3.92b</td> <td>2004-10-29</td> <td>Point release</td>   </tr>
  <tr> <td>V3.92a</td> <td>2004-10-26</td> <td>Point release</td>   </tr>
  <tr> <td>V3.92</td>  <td>2004-10-21</td> <td>Point release</td>   </tr>
  <tr> <td>V3.90e</td> <td>2004-10-14</td> <td>Point release</td>   </tr>
  <tr> <td>V3.90d</td> <td>2004-10-06</td> <td>Point release</td>   </tr>
  <tr> <td>V3.90c</td> <td>2004-09-06</td> <td>Point release</td>   </tr>
  <tr> <td>V3.90b</td> <td>2004-09-03</td> <td>Point release</td>   </tr>
  <tr> <td>V3.90a</td> <td>2004-08-23</td> <td>Point release</td>   </tr>
  <tr> <td>V3.90</td>  <td>2004-08-18</td> <td>General release</td> </tr>
  <tr> <td>V3.82</td>  <td>2004-07-14</td> <td>Point release</td>   </tr>
  <tr> <td>V3.80a</td> <td>2004-05-04</td> <td>Point release</td>   </tr>
  <tr> <td>V3.80</td>  <td>2004-04-30</td> <td>General release</td> </tr>
  <tr> <td>V3.76c</td> <td>2004-03-31</td> <td>Point release</td>   </tr>
  <tr> <td>V3.76b</td> <td>2004-03-17</td> <td>Point release</td>   </tr>
  <tr> <td>V3.76a</td> <td>2004-02-11</td> <td>Point release</td>   </tr>
  <tr> <td>V3.76</td>  <td>2004-01-23</td> <td>Point release</td>   </tr>
  <tr> <td>V3.74</td>  <td>2003-12-19</td> <td>Point release</td>   </tr>
  <tr> <td>V3.72</td>  <td>2003-12-10</td> <td>Point release</td>   </tr>
  <tr> <td>V3.70d</td> <td>2003-11-06</td> <td>Point release</td>   </tr>
  <tr> <td>V3.70c</td> <td>2003-11-04</td> <td>Point release</td>   </tr>
  <tr> <td>V3.70b</td> <td>2003-11-04</td> <td>Point release</td>   </tr>
  <tr> <td>V3.70a</td> <td>2003-10-30</td> <td>Point release</td>   </tr>
  <tr> <td>V3.70</td>  <td>2003-10-14</td> <td>General release</td> </tr>
  <tr> <td>V3.62</td>  <td>2003-09-01</td> <td>General release</td> </tr>
  <tr> <td>V3.60</td>  <td>2003-07-14</td> <td>General release</td> </tr>
  <tr> <td>V3.58</td>  <td>2003-07-10</td> <td>General release</td> </tr>
  <tr> <td>V3.56</td>  <td>2003-06-26</td> <td>General release</td> </tr>
  <tr> <td>V3.54</td>  <td>2003-06-04</td> <td>General release</td> </tr>
  <tr> <td>V3.52</td>  <td>2003-05-19</td> <td>General release</td> </tr>
  <tr> <td>V3.50</td>  <td>2003-05-09</td> <td>Point release</td>   </tr>
  <tr> <td>V3.48</td>  <td>2003-04-15</td> <td>General release</td> </tr>
  <tr> <td>V3.46</td>  <td>2003-04-02</td> <td>General release</td> </tr>
  <tr> <td>V3.44</td>  <td>2003-03-21</td> <td>General release</td> </tr>
  <tr> <td>V3.42</td>  <td>2003-03-03</td> <td>General release</td> </tr>
  <tr> <td>V3.40</td>  <td>2003-02-17</td> <td>General release</td> </tr>
  <tr> <td>V3.38</td>  <td>2003-02-06</td> <td>General release</td> </tr>
  <tr> <td>V3.36</td>  <td>2003-01-17</td> <td>General release</td> </tr>
  <tr> <td>V3.34</td>  <td>2002-11-28</td> <td>Point release</td>   </tr>
  <tr> <td>V3.32</td>  <td>2002-09-20</td> <td>General release</td> </tr>
  <tr> <td>V3.30</td>  <td>2002-09-12</td> <td>Point release</td>   </tr>
  <tr> <td>V3.28</td>  <td>2002-09-03</td> <td>Point release</td>   </tr>
  <tr> <td>V3.26</td>  <td>2002-08-20</td> <td>Point release</td>   </tr>
  <tr> <td>V3.24</td>  <td>2002-08-09</td> <td>General release</td> </tr>
  <tr> <td>V3.22</td>  <td>2002-07-19</td> <td>Point release</td>   </tr>
  <tr> <td>V3.20</td>  <td>2002-06-18</td> <td>First version covered by this document</td> </tr>
</table>
<hr>


<!-------------------------------------------------------------------------->
<!-- MISCELLANEOUS                                                        -->
<!-------------------------------------------------------------------------->
<h2><a name="misc">Miscellaneous</a></h2>
  This document was first released with version 3.20 of the software.
  Software released earlier is documented internally.
  This information is available at request.
<hr>

<br>
Copyright 2005 Micrium Technologies Corporation. All rights reserved.<br>
For more information, please visit our website <a href ="http://www.micrium.com/">www.micrium.com</a> or contact us at <a href ="mailto:sales@micrium.com">sales@micrium.com</a><br>

</body>
</html>
